/* Autore: Nicola Agosti */
/*
Scrivere un programma che chieda all'utente di inserie la lunghezza (in metri) raggio di una circonferenza
e ne calcoli il perimetro e l'area.
*/

#define _CRT_SECURE_NO_WARNINGS /* Necessario se utilizziamo Visual Studio */

/* Dichiaro una costante */
/*
Le costanti sono un modo semplice ed efficace per associare un nome univoco ad un "valore" (numero, stringa, macro, ecc.)
immutabile in tutto il codice.
Le costanti vengono elaborate dal preprocessore prima che avvenga la vera e propria compilazione del codice. In pratica
il processore cerca nel codice il nome della costante e lo sostituisce con il "valore" ad esso associato (esegue un "Trova e sostituisci").

I nomi delle costanti (NOSTRE CONVENZIONI):
 1) devono essere significativi, il nome deve fornire informazioni sul contenuto della costante;
 2) devono essere scritti in maiuscolo;
 3) se il nome č composto da due o pių parole, lo spazio deve essere sotituito dal carattere "_".
*/
#define PI_GRECO 3.14

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main()
{
	/* Dichiarazione delle variabili */
	float raggio, perimetro, area;

	/* Input */
	printf("Inserisci la lunghezza del raggio della circonferenza in metri: ");
	scanf("%f", &raggio);

	/* Calcolo il perimetro e l'area */
	perimetro = 2 * PI_GRECO * raggio;
	area = PI_GRECO * pow(raggio, 2);

	/* Output */

	/*
	Controllo del numero di cifre decimali nel caso dello specificatore di tipo "%f":
	se si vuole visualizzare il numero decimale con un numero di cifre dopo la virgola diverso da 6,
	si deve interporre tra il "%" e la "f" il carattere "." seguito dal numero di cifre decimali
	voulte.
	
	Esempio:
	 "%.2f": visualizza il numero con due cifre dopo la virgola (3.62, 54.01, 33.00, ecc.)
	 "%.3f": visualizza il numero con due cifre dopo la virgola (3.621, 54.019, 33.000, ecc.)
	*/
	printf("\nIl perimetro della circonferenza e\' lungo %.2f metri.", perimetro);
	printf("\nL\'area del cerchio ha una superficie di %.2f metri quadrati", area);

	return 0;
}